package cn.xhc.question.service;

import java.util.List;
import java.util.Map;

import com.alibaba.fastjson.JSONObject;

import cn.xhc.common.util.PageInfoUtil;
import cn.xhc.question.pojo.AAnswer;
import cn.xhc.question.pojo.AColumn;
import cn.xhc.question.pojo.AItem;
import cn.xhc.question.pojo.AQuestion;

public interface IQuestionService {
	/*栏目模块开始*/
	/**
	 * 查询一条栏目
	 * @param condMap
	 * @return
	 */
	AColumn findOneColumnService(Map<String, Object> condMap);
	/**
	 * 保存一条栏目
	 * @param column
	 * @return
	 */
	JSONObject saveOneColumnService(AColumn column);
	/**
	 * 更新一个栏目
	 * @param column
	 * @return
	 */
	JSONObject updateOneColumnService(AColumn column);
	/**
	 * 删除一个栏目
	 * @param column
	 * @return
	 */
	JSONObject deleteOneColumnService(AColumn column);
	/**
	 * 查询所有栏目
	 * @param condMap
	 * @return
	 */
	List<AColumn> findCondListColumnService(Map<String, Object> condMap);
	/*栏目模块结束*/
	
	/*栏目项目模块开始*/
	/**
	 * 查询一条栏目项目
	 * @param condMap
	 * @return
	 */
	AItem findOneItemService(Map<String, Object> condMap);
	/**
	 * 保存一条栏目项目
	 * @param item
	 * @return
	 */
	JSONObject saveOneItemService(AItem item);
	/**
	 * 更新一个栏目项目
	 * @param item
	 * @return
	 */
	JSONObject updateOneItemService(AItem item);
	/**
	 * 删除一个栏目项目
	 * @param item
	 * @return
	 */
	JSONObject deleteOneItemService(AItem item);
	/**
	 * 查询所有栏目项目
	 * @param condMap
	 * @return
	 */
	List<AItem> findCondListItemService(PageInfoUtil pageInfoUtil,Map<String, Object> condMap);
	/*栏目项目模块结束*/
	
	/*答案模块开始*/
	/**
	 * 查询一条答案
	 * @param condMap
	 * @return
	 */
	AAnswer findOneAnswerService(Map<String, Object> condMap);
	/**
	 * 保存一条答案
	 * @param answer
	 * @return
	 */
	JSONObject saveOneAnswerService(AAnswer answer);
	/**
	 * 更新一个答案
	 * @param answer
	 * @return
	 */
	JSONObject updateOneAnswerService(AAnswer answer);
	/**
	 * 删除一个答案
	 * @param answer
	 * @return
	 */
	JSONObject deleteOneAnswerService(AAnswer answer);
	/**
	 * 查询所有答案
	 * @param condMap
	 * @return
	 */
	List<AAnswer> findCondListAnswerService(PageInfoUtil pageInfoUtil,Map<String, Object> condMap);
	/*答案模块结束*/
	
	/*问题模块开始*/
	/**
	 * 查询一条问题
	 * @param condMap
	 * @return
	 */
	AQuestion findOneQuestionService(Map<String, Object> condMap);
	/**
	 * 保存一条问题
	 * @param question
	 * @return
	 */
	JSONObject saveOneQuestionService(AQuestion question);
	/**
	 * 更新一个问题
	 * @param question
	 * @return
	 */
	JSONObject updateOneQuestionService(AQuestion question);
	/**
	 * 删除一个问题
	 * @param question
	 * @return
	 */
	JSONObject deleteOneQuestionService(AQuestion question);
	/**
	 * 查询所有问题
	 * @param condMap
	 * @return
	 */
	List<AQuestion> findCondListQuestionService(PageInfoUtil pageInfoUtil,Map<String, Object> condMap);
	/*问题模块结束*/
	
	int findCountItemList(Map<String, Object> condMap);
}
